package com.hspedu.Date;

import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;

/**
 * @Author Stringzhua
 * @Date 2024/3/10 14:47
 * description:
 */
public class LocalDate_ {
    public static void main(String[] args) {
        //第三代日期
        //老韩解读
        //1. 使用 now() 返回表示当前日期时间的 对象
        LocalDateTime ldt = LocalDateTime.now(); //LocalDate.now();//LocalTime.now()
        System.out.println(ldt);//2024-03-10T14:51:35.434
        //2. 使用 DateTimeFormatter 对象来进行格式化
        // 创建 DateTimeFormatter 对象
        DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
        String format = dateTimeFormatter.format(ldt);
        System.out.println("格式化的日期=" + format);//格式化的日期=2024-03-10 14:51:35
        System.out.println("年=" + ldt.getYear());
        System.out.println("月=" + ldt.getMonth());//MARCH
        System.out.println("月=" + ldt.getMonthValue());//3
        System.out.println("日=" + ldt.getDayOfMonth());
        System.out.println("时=" + ldt.getHour());
        System.out.println("分=" + ldt.getMinute());
        System.out.println("秒=" + ldt.getSecond());
        LocalDate now = LocalDate.now(); //可以获取年月日
        System.out.println(now);
        LocalTime now2 = LocalTime.now();//获取到时分秒
        System.out.println(now2);
        //提供 plus【*当前时间往后推】 和 minus【*当前时间往前推】 方法可以对当前时间进行加或者减【*】
        //看看 890 天后，是什么时候 把 年月日-时分秒
        LocalDateTime localDateTime = ldt.plusDays(890);
        System.out.println("890 天后=" + dateTimeFormatter.format(localDateTime));
        LocalDateTime localDateTime1 = ldt.minusDays(890);
        System.out.println("890 天前=" + dateTimeFormatter.format(localDateTime1));
        //看看在 3456 分钟前是什么时候，把 年月日-时分秒输出
        LocalDateTime localDateTime2 = ldt.minusMinutes(3456);
        System.out.println("3456 分钟前 日期=" + dateTimeFormatter.format(localDateTime2));
        LocalDateTime localDateTime3 = ldt.plusMinutes(3456);
        System.out.println("3456 分钟后 日期=" + dateTimeFormatter.format(localDateTime3));
    }
}
